home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BMUG Revelations
/
BMUG Revelations.toast
/
Sound
/
Sound Utilities
/
The Sound-Tracker V1.0
/
'PSyn' Glue.c
next >
Wrap
Text File
|
1992-04-23
|
2KB
|
116 lines
/* 'Psyn' Glue.c - Glue for 'PSyn' resource calls */
/* Copyright (c) 1992 by Frank Seide, Koolbarg 39d, D-2000 Hamburg 74, Germany */
Boolean CheckPChannel() /* (struct PChannel * pc) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l (a0),a0
jmp 0(a0)
}
}
void StopPChannel() /* (struct PChannel * pc, Boolean fadeOut) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l (a0),a0
jmp 4(a0)
}
}
void ClosePChannel() /* (struct PChannel * pc) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l (a0),a0
jmp 8(a0)
}
}
void ResetPChannel() /* (struct PChannel * pc) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l (a0),a0
jmp 12(a0)
}
}
OSErr OpenPChannel() /* (int channels, Boolean stereo, int playFrames, struct PChannel ** pcp) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l a0,d0
bne @OK
move.w #25,d0
_SysError
@OK _HLock
_HNoPurge
move.l (a0),a0
jmp 16(a0)
}
}
OSErr StartPChannel() /* (struct PChannel * pc) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l (a0),a0
jmp 20(a0)
}
}
OSErr StereoPChannel() /* (register struct PChannel * pc, Boolean stereo) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l (a0),a0
jmp 24(a0)
}
}
void PChannelVolume() /* (struct PChannel * pc, int chan, Fixed volume) */
{
asm {
move.l #0,-(a7)
move.l #'PSyn',-(a7)
move.w #128,-(a7)
_GetResource
move.l (a7)+,a0
move.l (a0),a0
jmp 28(a0)
}
}